import "DPI-C" function int data_read(
	input int raddr
);

import "DPI-C" function void data_write(
	input int waddr,
	input int wdata,
	input byte wmask
);

module DATA_SRAM(
    input             clk,
    input             reset,
    input             data_sram_en,
    input             data_sram_wen,
    input      [31:0] data_sram_addr,
    input      [31:0] data_sram_wdata,
    input      [ 3:0] data_sram_wmask,
    output reg [31:0] data_sram_rdata
);
always @(posedge clk) begin//TODO:暂时改成异步，之后记得改为同步
    if(data_sram_en & ~reset) begin // 有读写请求时
        data_sram_rdata <= data_read(data_sram_addr);
        if (data_sram_wen) begin // 有写请求时
            data_write( data_sram_addr		   ,
                        data_sram_wdata		   ,
                        {4'b0,data_sram_wmask} );
        end
    end
end


endmodule
